www.gusucode.com > 小波分析理论与Matlab 7实现 > 小波分析理论与Matlab 7实现/code/Ch13/examp13_8.m

    clc;
clear;
% 装载原始图像
load belmont2 
nbc = size(map,1);
% 使用coif2执行图像的3层小波分解
wname = 'coif2'; lev = 3;
[c,s] = wavedec2(X,lev,wname);
% 由第1层的高频系数估计噪声标准差
det1 = detcoef2('compact',c,s,1);
sigma = median(abs(det1))/0.6745;
% 图像降噪时,使用wbmpen函数选择全局阈值
alpha = 1.2;
thr = wbmpen(c,l,sigma,alpha)
% 使用软阈值和保存的低频信号,进行图像降噪
keepapp = 1;
xd = wdencmp('gbl',c,s,wname,lev,thr,'s',keepapp);
% 画出原始图像和降噪图像
colormap(pink(nbc));
subplot(121), image(wcodemat(X,nbc))
title('原始图像')
subplot(122), image(wcodemat(xd,nbc))
title('降噪图像')